package com.power.sifa.approve.api;

import com.plf.common.domain.ResponseDTO;
import com.power.sifa.approve.model.Apl_typical_case;
import com.power.sifa.approve.model.pageInfo.Apl_typical_casePageInfo;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.multipart.MultipartFile;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;

/**
 *  典型案件收藏表 Feign
 */
public interface IApl_typical_caseFeign {

    /**
     * 典型案件收藏表分页列表
     */
    @PostMapping("/apl_typical_case/list")
    ResponseDTO list(@RequestBody Apl_typical_casePageInfo apl_typical_casePageInfo);

    /**
    * 查看典型案件收藏表
    */
    @GetMapping("/apl_typical_case/view")
    ResponseDTO view(@RequestParam("id") String id);

    /**
    * 删除典型案件收藏表
    */
    @PostMapping("/apl_typical_case/delete")
    ResponseDTO delete(@RequestParam("id") String id);

    ///**
    // * 查看典型案件收藏表 复合主键使用
    // */
    //@PostMapping("/apl_typical_case/viewByPK")
    //ResponseDTO viewByPK(@RequestBody Apl_typical_case.Apl_typical_casePK pk);

    /**
     * 修改或保存典型案件收藏表
     */
    @PostMapping("/apl_typical_case/save")
    ResponseDTO save(@RequestBody Apl_typical_case apl_typical_case);

    ///**
    // * 删除典型案件收藏表 复合主键使用
    // */
    //@PostMapping("/apl_typical_case/deleteByPK")
    //ResponseDTO deleteByPK(@RequestBody Apl_typical_case.Apl_typical_casePK pk);
    
    /**
     * 批量删除典型案件收藏表
     */
    @PostMapping("/apl_typical_case/batchDel")
    ResponseDTO batchDel(@RequestParam("ids") String ids);
    
     /**
     * 导出excel
     */
    @PostMapping("/apl_typical_case/output")
    void output(HttpServletResponse response, @RequestBody Apl_typical_casePageInfo apl_typical_casePageInfo);
        
     /**
     * 导出excel模板
     */
    @PostMapping("/apl_typical_case/exportExcelTemplate")
    void exportExcelTemplate(HttpServletResponse response);
    
     /**
     *	导入excel
     */
    @PostMapping("/apl_typical_case/importExcel")
    ResponseDTO importExcel(@RequestBody MultipartFile file) throws IOException ;



    /**
     * 典型案件收藏表分页列表
     */
    @PostMapping("/apl_typical_case/conditionQuery")
    ResponseDTO conditionQuery(@RequestBody Apl_typical_casePageInfo apl_typical_casePageInfo);


    /**
     * 通过applid和userid查询典型案例
     */
    @PostMapping("/apl_typical_case/getTypicalDataByUserId")
    ResponseDTO getTypicalDataByUserId(@RequestParam("applyid") String applyid, @RequestParam("userId") String userId);

    /**
     * 分页查询典型案例
     * @param apl_typical_casePageInfo
     * @return
     */
    @PostMapping("/apl_typical_case/pageTypicalCase")
    ResponseDTO pageTypicalCase(@RequestBody Apl_typical_casePageInfo apl_typical_casePageInfo);

}
